<?php

include "../functions/dbfunctions.php";

class Derivacion {

    public static function buscar($id_ficha) {



        $consulta = "SELECT
                        US.NOMBRE_COMPLETO,
                        D.ID_DERIVACION,
                        D.TIPO_DERIVACION_NOMBRE,
                        TO_CHAR(D.FECHA, 'DD/MM/YYYY') AS FECHA,
                        D.DESCRIPCION
                    FROM
                        DERIVACION D,
                        USUARIOS US
                    WHERE
                        D.FICHA_ALUMNO_ID_FICHA_ALUMNO = :id AND
                        D.USUARIO_ID_USUARIO = US.ID_USUARIO";

        $result = real_ret_arrayi($consulta, array(":id" => $id_ficha));
        return $result;
    }

    public static function obtener($id_derivacion) {


        $result = real_ret_arrayi(
                "
                    SELECT
                        US.ID_USUARIO,
                        US.NOMBRE_COMPLETO,
                        D.ID_DERIVACION,
                        D.TIPO_DERIVACION_NOMBRE,
                        TO_CHAR(D.FECHA, 'DD/MM/YYYY') AS FECHA,
                        D.DESCRIPCION
                    FROM
                        DERIVACION D,
                        USUARIOS US
                    WHERE
                        D.ID_DERIVACION = :id AND
                        D.USUARIO_ID_USUARIO = US.ID_USUARIO",
                        array(":id" => $id_derivacion));
        return $result;
    }

    public static function listarTiposDerivacion() {

        $result = ret_array('
                      SELECT
                            *
                      FROM
                            TIPO_DERIVACION'
        );
        return $result;
    }

    public static function editar($arr_derivacion) {
        // se nos escapó estado académico
        // $$$$   $$$$$  $$$$$   $$$$$$$$ $$    $$ $$$$$$$$
        //  $$   $$    $$    $$  $$    $$ $$    $$ $$    $$
        //  $$   $$          $$  $$    $$ $$    $$ $$    $$
        //  $$    $$        $$   $$$$$$$$ $$$$$$$$ $$$$$$$$
        //  $$      $$    $$     $$       $$    $$ $$
        //  $$       $$  $$      $$       $$    $$ $$
        // $$$$        $$        $$       $$    $$ $$

        $consulta = '
            UPDATE
                DERIVACION
            SET
                USUARIO_ID_USUARIO = :idUsuario,
                TIPO_DERIVACION_NOMBRE = :idTipoDerivacion,
                DESCRIPCION =  :descripcion
            WHERE
                ID_DERIVACION = :id';
        real_parsei($consulta,
                array(":idUsuario" => $arr_derivacion['idUsuario'],
                    ":idTipoDerivacion" => $arr_derivacion['pDerTipo'],
                    ":descripcion" => $arr_derivacion['pDerObservaciones'],
                    ":id" => $arr_derivacion['idDerivacion']));
    }

    public static function crear($arr_derivacion) {
        $salida = ":id";
        $consulta = "
            INSERT INTO
                DERIVACION
                    (FICHA_ALUMNO_ID_FICHA_ALUMNO, 
                     FECHA, 
                     USUARIO_ID_USUARIO,
                     TIPO_DERIVACION_NOMBRE,
                     DESCRIPCION)
            VALUES 
                (:idFicha,
                TO_DATE(:fecha , 'DD/MM/YYYY'),
                :idUsuario,
                :tipoDerivacion,
                :observaciones)
            RETURNING ID_DERIVACION INTO " . $salida;

        $ret = real_parsei($consulta, 
			   array(":fecha" => $arr_derivacion["pDerFecha"],
				 ":idFicha" => $arr_derivacion["idFicha"],
				 ":idUsuario" => $arr_derivacion['idUsuario'],
				 ":tipoDerivacion" => $arr_derivacion['pDerTipo'],
				 ":observaciones" => $arr_derivacion['pDerObservaciones']),
			   $salida);

        return array("id" => $ret);
    }

}

?>
